﻿using MongoDB.Bson.Serialization.Attributes;
using System;
using System.Collections.Generic;
using System.Text;

namespace AppSocketModel
{
    /// <summary>
    /// 设备重启次数统计
    /// </summary>
    [BsonIgnoreExtraElements]
    public class DeviceRstTypeCnt
    { 
        /// <summary>
        /// IMEI
        /// </summary>
        public string IMEI { set; get; }

        /// <summary>
        /// GPRS模块型号
        /// </summary>
        public string GprsModule { set; get; }

        /// <summary>
        /// 硬件版本号
        /// </summary>
        public string HardwareVersion { set; get; }

        /// <summary>
        /// 硬件代码
        /// </summary>
        public string HardwareCode { set; get; }

        /// <summary>
        /// 固件版本号
        /// </summary>
        public string FirmwareVersion { set; get; }

        /// <summary>
        /// 固件代码
        /// </summary>
        public string FirmwareCode { set; get; }

        /// <summary>
        /// 服务器收到数据处理的日期时间
        /// </summary>
        public DateTime ReceiveDateTime { set; get; }

        /// <summary>
        /// 电池电压
        /// </summary>
        public float BatteryVoltage { set; get; }

        /// <summary>
        /// 数据上报日期时间
        /// </summary>
        public DateTime? DataPacketDateTime { set; get; }

        /// <summary>
        /// 信号
        /// </summary>
        public int OnSignal { set; get; } 

        /// <summary>
        /// 读IMEI
        /// </summary>
        public int OnReadImei { set; get; }

        /// <summary>
        /// GSM初始化
        /// </summary>
        public int OnGsmInit { set; get; }

        /// <summary>
        /// 读SIM卡
        /// </summary>
        public int OnReadCard { set; get; }

        /// <summary>
        /// GPRS初始化
        /// </summary>
        public int OnGprsInit { set; get; }

        /// <summary>
        /// LBS初始化
        /// </summary>
        public int OnSetLbsCfg { set; get; }

        /// <summary>
        /// UDP连接
        /// </summary>
        public int OnUdpLink { set; get; }

        /// <summary>
        /// 发送设备信息数据
        /// </summary>
        public int OnSendDeviceInfo { set; get; }

        /// <summary>
        /// 获取LBS
        /// </summary>
        public int OnGetLbs { set; get; }

        /// <summary>
        /// 获取GPS
        /// </summary>
        public int OnGetGps { set; get; }

        /// <summary>
        /// 发送数据
        /// </summary>
        public int OnSendData { set; get; }

        /// <summary>
        /// 切换到AT命令模式
        /// </summary>
        public int OnModeToAT { set; get; }

        /// <summary>
        /// 读取GPRS模块名称
        /// </summary>
        public int OnReadGprsModuleName { set; get; }

        /// <summary>
        /// 4G模块参数检查和设置
        /// </summary>
        public int OnCheck4GModuleParam { set; get; }

        /// <summary>
        /// 检测LBS
        /// </summary>
        public int OnCheckLBS { set; get; }

        /// <summary>
        /// 切换到自动模式
        /// </summary>
        public int OnModeToAuto { set; get; }

        /// <summary>
        /// 数据帧长度
        /// </summary>
        public int Len { set; get; }

    }
}
